.table-container {
  position: relative;
  width: 100%;
  height: 100%;

  .table-loading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.7);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 10;
  }

  .table-scroll-view {
    width: 100%;
    height: 100%;
  }

  .table {
    display: flex;
    flex-direction: column;
    width: 100%;

    .table-header {
      display: flex;
      background-color: #fafafa;
      font-weight: bold;
      border-bottom: 1px solid #e8e8e8;

      .table-header-cell {
        padding: 12px 8px;
        flex-shrink: 0;
        display: flex;
        align-items: center;
        justify-content: space-between;

        .sort-icon {
          margin-left: 4px;
        }
      }
    }

    .table-body {
      display: flex;
      flex-direction: column;

      .table-row {
        display: flex;
        border-bottom: 1px solid #f0f0f0;
        transition: background-color 0.3s;

        &:hover {
          background-color: #f5f5f5;
        }

        .table-cell {
          padding: 12px 8px;
          flex-shrink: 0;
          word-break: break-word;
        }
      }
    }
  }

  .table-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0;
    margin-top: 8px;

    .pagination-info {
      font-size: 14px;
      color: #666;
    }

    .pagination-controls {
      display: flex;
      align-items: center;

      .pagination-item {
        min-width: 32px;
        height: 32px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 4px;
        padding: 0 6px;
        border-radius: 4px;
        cursor: pointer;
        font-size: 14px;

        &:hover {
          background-color: #f0f0f0;
        }

        &.active {
          background-color: #1890ff;
          color: white;
        }

        &.disabled {
          color: #ccc;
          cursor: not-allowed;
          background-color: transparent;
        }
      }
    }
  }
}